Observably Sequential Languages
نویسندگان
چکیده
One of the major challenges in denotational semantics is the construction of a fully abstract semantics for a higher-order sequential programming language. For the past fifteen years, research on this problem has focused on developing a semantics for PCF, an idealized functional programming language based on the typed λ-calculus. Unlike most practical languages, PCF has no facilities for observing and exploiting the evaluation order of arguments to procedures. Since we believe that these facilities play a crucial role in sequential computation, this paper focuses on a sequential extension of PCF, called SPCF, that includes two classes of control operators: a possibly empty set of error generators and a collection of catch and throw constructs. For each set of error generators, the paper presents a fully abstract semantics for SPCF. If the set of error generators is empty, the semantics interprets all procedures—including catch and throw—as Berry-Curien sequential algorithms. If the language contains error generators, procedures denote manifestly sequential functions. The manifestly sequential functions form a Scott domain that is isomorphic to a domain of decision trees, which is the natural extension of the Berry-Curien domain of sequential algorithms in the presence of errors. 1 Full Abstraction and Sequentiality A denotational semantics for a programming language determines two natural equivalence relations on program phrases. The first relation, denotational equivalence, equates two phrases if and only if they have the same meaning (denotation). The second relation, observational equivalence, equates two phrases if and only if they have the same “observable ∗Supported in part by NSF grant CCR 91-22518. †Supported in part by Esprit BRA CLICS, and a visit at DEC SRC, Palo-Alto. ‡Supported in part by NSF grants CCR 89-17022, CCR 91-22518, and a visit at Carnegie Mellon University.
منابع مشابه
What is a Universal Higher-Order Programming Language?
In this paper, we develop a theory of higher-order com-putability suitable for comparing the expressiveness of sequential, deter-ministic programming languages. The theory is based on the construction of a new universal domain T and corresponding universal language KL. The domain T is universal for observably sequential domains; KL can de-ne all the computable elements of T, including the eleme...
متن کاملLocally Boolean Domains and Universal Models for Infinitary Sequential Languages
In the first part of this Thesis we develop the theory of locally boolean domains and bistable maps (as introduced in [Lai05b]) and show that the category of locally boolean domains and bistable maps is equivalent to the category of Curien-Lamarche games and observably sequential functions (cf. [CCF94]). Further we show that the category of locally boolean domains has inverse limits of ω-chains...
متن کاملSequential algorithms as bistable maps
We exhibit Cartwright-Curien-Felleisen’s model of observably sequential algorithms as a full subcategory of Laird’s bistable biorders, thereby reconciling two views of functions: functions-as-algorithms (or programs), and functions-as-relations. We then characterize affine sequential algorithms as affine bistable functions in the full subcategory of locally boolean orders.
متن کاملReport on project GR/S72191/02 Extensional semantics of program behaviour
Game semantics is a way of characterizing programming languages and logical calculi intensionally by interpreting proofs or programs as strategies for interacting with the environment; this process of interaction can be thought of as playing a two-person game. Games can capture precisely the behaviour of higher-order programs in sequential languages, in a fashion which is very difficult or impo...
متن کاملDecidability and syntactic control of interference
We investigate the decidability of observational equivalence and approximation in Reynolds’ “Syntactic Control of Interference” (SCI), a prototypical functionalimperative language in which covert interference between functions and their arguments is prevented by the use of an affine typing discipline. By associating denotations of terms in a fully abstract “relational” model of finitary basic S...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1994